大家好,今天終於要稍微進入主題啦。昨天的教學有看完,應該都已經完成了 ROS 的安裝了吧。這篇要教的主要是一些 ROS 中常見的 Linux 語法,由於筆者本身也不是對 Linux 很了解,所以都會是很入門的指令,量也不多,初學者不需要擔心,應該很快就能記住並活用了。那我們就廢話不多說,開始進行下面的內容吧!
Linux 語法的使用於 ROS 中佔有非常重要且十分基礎的地位。由於 Ubuntu 是以 Linux 為架構的作業系統,因此 filesystem 中都所有操作都須透過終端機輸入指令來進行。像是基礎的移動檔案與創建資料夾等,都無法像 Window s系統般可以有較為直覺的介面操作。下列為較為常見的指令:
cd catkin_ws/src/
透過 cd
+檔案路徑這個指令,可以進入到指定的檔案位址,由於 ROS 系統是一個非常大的網狀結構,我們所使用的各個資料都會放置在不同的資料夾,因此這個指令非常重要。執行成功後樣子如下:
可以發現已經順利進入該資料夾了。
ls
ls -la
ls
是列出目前資料夾中可視檔案的指令,而 ls -la
為列出目前資料夾所有檔案(包含隱藏檔案)的指令。這邊以 ls
為例,執行成功後樣子如下:
以上圖而言,就可以看到上面總共列出6個檔案,代表 catkin_ws/src/
資料夾中有6個可視檔案,這個指令能方便我們查找所需資料。
pwd
pwd
是顯示目前所在位置之路徑的指令,透過這個指令,我們可以快速了解在複雜的網狀資料夾結構中,我們目前的所處位址,類似迷宮中 GPS 的概念。執行成功後樣子如下:
touch test.py
touch
是建立新檔案的指令,有了這個指令,我們就可以建立屬於自己的檔案啦。執行成功後樣子如下:
從上圖可以發現,筆者順利建立了一個名為 test 的 Python 檔。
mkdir test
mkdir
是建立新資料夾的指令,有了這個指令,我們就可以建立屬於自己的資料夾,方便檔案分類。執行成功後樣子如下:
從上圖可以發現,筆者順利建立了一個名為 test 的資料夾。
rm test.py
rm -r test
rm
是刪除檔案的指令,而 rm -r
則是刪除資料夾的指令。執行成功後樣子如下:
從上圖可以發現,剛才筆者建立的 Python 檔和 test 資料夾都已經順利刪除。
mv test.launch src
mv
是移動檔案/資料夾的指令,後面再添加移動路徑,就可以順利將檔案/資料夾移至指定的位址啦。執行成功後樣子如下:
從上圖可以發現,筆者成功建立一個 test.launch,並利用 mv
將 test.launch 指定移動至 src 資料夾中,最後也順利移動完成。
cp test.launch src
cp
是複製檔案/資料夾的指令,和 mv
大同小異,差別只是移動與複製而已。執行成功後樣子如下:
可以看到,透過 cp
,筆者成功將 test.launch 複製到 src 資料夾當中了。
首先我們必須先針對vi做介紹,vi 是 Linux 當中的預設文書編輯器,透過在 Ubuntu 的終端機當中使用 vi
這個指令,我們便能夠開始編輯文件檔案,若在目前的路徑下沒有此名稱的檔案時,系統會自動建立檔案。
在一開始安裝好 Ubuntu 後,系統會有最基本的 vi 軟體,建議各位可以先輸入下列指令下載完整版的 vi 軟體:
sudo apt-get install vim
在安裝完成後,讓我們輸入指令碼 vi <filename>
,如以下範例,此時便會跳出新視窗顯示我們的檔案內容。當然這是筆者已經編輯過的檔案,若是讀者初次使用時應該會發現視窗當中沒有任何文字。
vi asd.py
此時稱為 vi 當中的一般模式,若想對檔案內部進行編輯,我們必須先按下 i 進入編輯模式,此時可以看到檔案中左下角顯示了 --插入--,如此我們便可以透過鍵盤輸入文字,對檔案進行編輯了。
編輯好檔案後,若想退出編輯模式,我們可以按 Esc 來退出。退出後,若想進行儲存、離開檔案等操作,以下介紹幾個基本的 vi 內部的語法:
1. i -進入編輯模式
2. Esc -退出編輯模式
3. :w -存檔
4. :wq -存檔並離開vi
5. :q -離開vi
6. :q! -不儲存, 強制離開vi
7. :wq! -強制儲存後離開vi
8. :set nu -編輯模式中,顯示行數
sudo
是 Unix/Linux 平臺上的一個非常有用的工具,它允許一般用戶得以用系統管理員的身分執行某些指令,例如上述所提到的 apt-get install
即是在Linux系統上針對某些套件進行安裝、更新的指令。
今天介紹了許多 Linux 的基本語法,這些語法在往後操作 Linux 終端機時都會經常使用到,因此還請各位熟記。明天開始就要正式的進入 ROS 相關主題了,請大家敬請期待!